package cn.tedu.review.cn.tedu.oop;

/**
 * 该类用于练习面向对象的入门案例
 * @author ：Dsi
 * @date ：2021/11/5 10:17
 * 需求：
 * 设计手机这一类事物：
 * 分析属性：品牌、价格、尺寸、颜色
 * 分析功能：打电话、发短信、看直播
 */
//一个java中可存在多个Class，但被Public修饰的Class只有一个
//而且要求这个公共类的名字必须与java文件名字一致
public class TestCreatClass {
    public static void main(String[] args) {
        //4.创建手机类对象p1
        Phone p1=new Phone();
        //5.1通过手机类调用手机的方法
        p1.call();
        p1.message();
        p1.video();
        //5.2.通过手机类对象创建变量
        p1.color="白";
        p1.name="苹果";
        p1.price=7899;
        p1.size=4.5;
        //6.通过手机类对象打印查看属性
        System.out.print(p1.color);
        System.out.print(p1.price);
        System.out.print(p1.size);
        System.out.print(p1.name);
        System.out.println(p1.call());
        //7.尝试p2调用phone的类，并调用phone类中的方法及赋值
        Phone p2=new Phone();
        System.out.println(p2.call());
        p2.message();
        p2.video();
        p2.size=43.0;
        p2.name="华为";
        p2.price=10000;
        p2.color="白绝银";
        System.out.println(p2.size);
        //8.
        System.out.println(p1);
        System.out.println(p2);
    }
}

//1.通过Class关键字创建手机类(模板）--用于描述手机这一类事物--属性+功能
class Phone {
    //2.定义手机类的属性，用成员变量描述--位置：类里方法外
    String name;
    double price;
    double size;
    String color;

    //3.定义手机的功能--用方法来描述--格式：方法修饰符 返回值类型 方法名（参数列表）{方法体}
    public int call() {
        System.out.println("正在打电话");
        return 0;
    }

    public void message() {
        System.out.println("正在发短信");
    }

    public void video() {
        System.out.println("正在看直播");
    }

}


